#include "header.h"
using namespace std;
extern ARMY troops[];
extern int hp_status[9][2];
extern TOOLS tools;
extern BASE* Cp[];
extern int board[WIDTH][WIDTH];
extern int STATUS[9][6];
extern int sqAttack[10];
extern int dfslimit;

void CCDFS(int cn,int kind,HITPOS* ans)
{
	if(cn==0)
	{
		for(int i=0;i<10;i++)
			ans[i].hitkind=-1;
	}
	if(cn>=5||dfslimit>1000000)
	{
		return ;
	}
	for(int i=1;i<Cp[cn]->enemy_list[kind].hit_pos[0].pos[0];i++)
	{
		if(board[Cp[cn]->enemy_list[kind].hit_pos[i].pos[0]][Cp[cn]->enemy_list[kind].hit_pos[i].pos[1]]!=911)
		{
			dfslimit++;
			ans[cn].pos[0]=Cp[cn]->enemy_list[kind].hit_pos[i].pos[0];
			ans[cn].pos[1]=Cp[cn]->enemy_list[kind].hit_pos[i].pos[1];
			ans[cn].hitkind=cn;
			int tpboard=board[Cp[cn]->enemy_list[kind].hit_pos[i].pos[0]][Cp[cn]->enemy_list[kind].hit_pos[i].pos[1]];
			board[ans[cn].pos[0]][ans[cn].pos[1]]=911;
			CCDFS(cn+1,kind ,ans);
			board[Cp[cn]->enemy_list[kind].hit_pos[i].pos[0]][Cp[cn]->enemy_list[kind].hit_pos[i].pos[1]]=tpboard;
		}
	}
}